﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Xml.Serialization;
using ANEPWebService.SerializableObjects;

namespace ANEPWebService
{
    /// <summary>
    /// Descripción breve de ANEPWebService
    /// </summary>
    [WebService(Namespace = "http://localhost/ANEPWebServices", Name = "ANEPWebServices",
        Description = "Servicio de prueba ANEP")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // Para permitir que se llame a este servicio Web desde un script, usando ASP.NET AJAX, quite la marca de comentario de la línea siguiente. 
        // [System.Web.Script.Services.ScriptService]
    public class ANEPServices : System.Web.Services.WebService
    {

        private List<SerializableCentro> centros = new List<SerializableCentro>();
        [WebMethod()]
        [XmlInclude(typeof (SerializableCentro))]
        public SerializableCentro xmlTEst(string licenseNumber)
        {
            dataTest();
            foreach (SerializableCentro c in centros)
            {
                if (c.IdCentro == licenseNumber) return c;
            }
            return null;
        }

        private void dataTest() 
        {
            SerializableResponsable responsable = new SerializableResponsable() { EmailResponsable = "papap@hotmail.com" };
            List<SerializableResponsable> responsables = new List<SerializableResponsable>();
            responsables.Add(responsable);

            SerializableAlumno alumno1 = new SerializableAlumno() { IdAlumno = "1", NombreAlumno = "Marcos", Responsables = responsables };
            SerializableAlumno alumno2 = new SerializableAlumno() { IdAlumno = "2", NombreAlumno = "Gimena", Responsables = responsables };
            SerializableAlumno alumno3 = new SerializableAlumno() { IdAlumno = "3", NombreAlumno = "Jose", Responsables = responsables };
            SerializableAlumno alumno4 = new SerializableAlumno() { IdAlumno = "4", NombreAlumno = "Pedro", Responsables = responsables };
            SerializableAlumno alumno5 = new SerializableAlumno() { IdAlumno = "5", NombreAlumno = "Camila", Responsables = responsables };
            List<SerializableAlumno> alumnos1 = new List<SerializableAlumno>();
            List<SerializableAlumno> alumnos2 = new List<SerializableAlumno>();
            List<SerializableAlumno> alumnos = new List<SerializableAlumno>();
            alumnos1.Add(alumno1);
            alumnos1.Add(alumno2);
            alumnos1.Add(alumno3);
            alumnos2.Add(alumno4);
            alumnos2.Add(alumno5);
            alumnos.Add(alumno1);
            alumnos.Add(alumno2);
            alumnos.Add(alumno3);
            alumnos.Add(alumno4);
            alumnos.Add(alumno5);

            SerializableMateria mat = new SerializableMateria() { IdMateria = "1", NombreMateria = "Matematica" };
            SerializableMateria fis = new SerializableMateria() { IdMateria = "1", NombreMateria = "Fisica" };
            SerializableMateria quim = new SerializableMateria() { IdMateria = "1", NombreMateria = "Quimica" };
            List<SerializableMateria> materias = new List<SerializableMateria>();
            materias.Add(mat);
            materias.Add(fis);
            materias.Add(quim);

            SerializableDocente docente1 = new SerializableDocente() { IdDocente = "1", Materias = materias, Nombre = "Carlos" };
            SerializableDocente docente2 = new SerializableDocente() { IdDocente = "2", Materias = materias, Nombre = "Mercedes" };
            List<SerializableDocente> docentes = new List<SerializableDocente>();
            docentes.Add(docente1);
            docentes.Add(docente2);

            SerializableGrupo grupo1 = new SerializableGrupo() { IdGrupo = "N1", Alumnos = alumnos1, Docenteses = docentes };
            SerializableGrupo grupo2 = new SerializableGrupo() { IdGrupo = "N1", Alumnos = alumnos2, Docenteses = docentes };
            List<SerializableGrupo> grupos = new List<SerializableGrupo>();
            grupos.Add(grupo1);
            grupos.Add(grupo2);

            SerializableCentro centro = new SerializableCentro() { Alumnos = alumnos, Docenteses = docentes, Grupos = grupos, IdCentro = "Liceo10" };
            string XML = string.Empty;
            XML = XMLParseManager.ObjectToXML(centro);
            centros.Add(centro);


            SerializableResponsable responsable2 = new SerializableResponsable() { EmailResponsable = "papap@hotmail.com" };
            List<SerializableResponsable> responsables2 = new List<SerializableResponsable>();
            responsables2.Add(responsable2);

            SerializableAlumno alumno11 = new SerializableAlumno() { IdAlumno = "1", NombreAlumno = "Marcos", Responsables = responsables };
            SerializableAlumno alumno22 = new SerializableAlumno() { IdAlumno = "2", NombreAlumno = "Gimena", Responsables = responsables };
            SerializableAlumno alumno33 = new SerializableAlumno() { IdAlumno = "3", NombreAlumno = "Jose", Responsables = responsables };
            SerializableAlumno alumno44 = new SerializableAlumno() { IdAlumno = "4", NombreAlumno = "Pedro", Responsables = responsables };
            SerializableAlumno alumno55 = new SerializableAlumno() { IdAlumno = "5", NombreAlumno = "Camila", Responsables = responsables };
            SerializableAlumno alumno66 = new SerializableAlumno() { IdAlumno = "6", NombreAlumno = "Jose", Responsables = responsables };
            SerializableAlumno alumno77 = new SerializableAlumno() { IdAlumno = "7", NombreAlumno = "Mauricio", Responsables = responsables };
            SerializableAlumno alumno88 = new SerializableAlumno() { IdAlumno = "8", NombreAlumno = "Enrique", Responsables = responsables };
            SerializableAlumno alumno99 = new SerializableAlumno() { IdAlumno = "9", NombreAlumno = "Viky", Responsables = responsables };
            SerializableAlumno alumno00 = new SerializableAlumno() { IdAlumno = "10", NombreAlumno = "Taty", Responsables = responsables };
            List<SerializableAlumno> alumnos11 = new List<SerializableAlumno>();
            List<SerializableAlumno> alumnos22 = new List<SerializableAlumno>();
            List<SerializableAlumno> alumnos33 = new List<SerializableAlumno>();
            List<SerializableAlumno> alumnos44 = new List<SerializableAlumno>();
            List<SerializableAlumno> alumnos0= new List<SerializableAlumno>();
            alumnos11.Add(alumno11);
            alumnos11.Add(alumno22);
            alumnos11.Add(alumno33);
            alumnos22.Add(alumno44);
            alumnos22.Add(alumno55);
            alumnos44.Add(alumno11);
            alumnos44.Add(alumno22);
            alumnos44.Add(alumno33);
            alumnos44.Add(alumno44);
            alumnos44.Add(alumno55);
            alumnos33.Add(alumno66);
            alumnos33.Add(alumno77);
            alumnos33.Add(alumno88);
            alumnos33.Add(alumno99);
            alumnos33.Add(alumno00);
            alumnos0.Add(alumno00);
            alumnos0.Add(alumno11);
            alumnos0.Add(alumno22);
            alumnos0.Add(alumno33);
            alumnos0.Add(alumno44);
            alumnos0.Add(alumno55);
            alumnos0.Add(alumno66);
            alumnos0.Add(alumno77);
            alumnos0.Add(alumno88);
            alumnos0.Add(alumno99);
            SerializableGrupo grupo11 = new SerializableGrupo() { IdGrupo = "N1A", Alumnos = alumnos11, Docenteses = docentes };
            SerializableGrupo grupo22 = new SerializableGrupo() { IdGrupo = "M1A", Alumnos = alumnos22, Docenteses = docentes };
            SerializableGrupo grupo33 = new SerializableGrupo() { IdGrupo = "N2B", Alumnos = alumnos33, Docenteses = docentes };
            List<SerializableGrupo> grupos1 = new List<SerializableGrupo>();
            grupos1.Add(grupo11);
            grupos1.Add(grupo22);
            grupos1.Add(grupo33);
            SerializableCentro centro2 = new SerializableCentro() { Alumnos = alumnos0, Docenteses = docentes, Grupos = grupos1, IdCentro = "Liceo4" };
            string XML2 = string.Empty;
            XML2 = XMLParseManager.ObjectToXML(centro2);
            centros.Add(centro2);


        }

        [WebMethod()]
        public void pasajeLista(String usuario, String contraseña)
        {
            
        }
    }
}